VLOOKUP
的歷史事實上,VLOOKUP的歷史早於EXCEL。1983年Lotus 1-2-3首次發行,其中包括了VLOOKUP函數,而這甚至不是第一個Spreadsheet查找函數。Lotus 1-2-3大部分的功能是沿用VisiCalc(世界上第一套電子試算表軟件),VLOOKUP也是延續了VisiCalc內的@LOOKUP函數功能。
從VisiCalc的發明人Bob Frankston的自傳中,他提到了@LOOKUP最早的應用案例:
One of the early applications for VisiCalc was my 1979 tax form. I created @lookup for that purpose.
VisiCalc 的早期應用程式之一是我 1979 年的稅表。 我為此目的創建了@lookup。
出自: Implementing VisiCalc
換句話說,LOOKUP和後續的VLOOKUP其實是為了税表查詢這種數值區間查找功能而發明的。而實際上,Lotus 1-2-3內的VLOOKUP其實是沒有第四個函數參數的。而過去40年為了保持兼容性,這個函數的輸入從來都沒有變過。
另外還有一個說法是有關於效能。由於近似比對的假設是查詢資料是以排序的,所以可以使用高效的Binary Search。相對的,完全比對使用的是低效的Linear Search。如果在以前的舊電腦上跑了Linear Search可能會造成不必要的處理延遲(lag)。但考慮到早期的系統根本沒有完全比對這個功能,這個解釋應該不是正解。
雖然資料工作者常常開Spreadsheet使用者的玩笑,但事實是Spreadsheet這個軟體工具從個人電腦剛發明的年代到現在都是商務用戶的Killer App。作為 2023 年愚人節玩笑,諮詢公司 Xebia 宣布他們要推出一款適用於當下最夯的資料工具dbt 和 DuckDB的 Excel Adapter。但沒想到的事,這個工具一下子就在資料工作社群,在短時間達到了80+個Github Star。
愚人節後他們立刻就棄用(deprecated)了這個工具,但可以看出來Excel持久不衰的人氣。